

const path = require('path')

const htmlWebpackPlugin = require('html-webpack-plugin')
const VueLoaderPlugin = require('vue-loader/lib/plugin')
// 向外暴露一个对象
module.exports = {
    entry: path.join(__dirname, './src/main.js'),
    output: {
        path: path.join(__dirname, './dist'),
        filename: 'bundle.js'
    },
    plugins: [
        new htmlWebpackPlugin({
            template: path.join(__dirname, './src/index.html'),
            filename: 'index.html'
        }),
        new VueLoaderPlugin()
    ],
    module: {
        rules: [
            { test: /\.css$/, use: ['style-loader', 'css-loader'] },
            {test:/\.scss$/,use:['style-loader','css-loader','sass-loader']},
            // 处理图片路径的loader,当图片的大小值大于等于limit的值，则不是base64的值。反之，则是。
            // 这样name,是为了防止文件重名问题。
            { test: /\.(jpg|png|jpeg)$/, use: 'url-loader?limit=100&name=[hash]-[name].[ext]' },
            {test:/\.(ttf|eot|svg|woff|woff2)$/,use:'url-loader'},//处理字体icon的。     bootstrap。
            {test:/\.js$/,use:'babel-loader',exclude:/node_modules/},
            {test:/\.vue$/,use:'vue-loader'}//匹配.vue组件的。
        ]
    },
    resolve:{
        alias:{
            "vue$":"vue/dist/vue.js"
        }
    }
}